LV 3

마지막 수정일: 2025. 09. 10.

베스트앨범

베스트앨범
object를 더 잘 쓸 수 있을 듯
다시 풀어보자

JAVASCRIPT
function solution(genres, plays) {
  let res = [];
  const musicObject = genres.reduce((genreObject, genre, index) => {
    genreObject[genre] = genreObject[genre]
      ? [
          genreObject[genre][0] + plays[index],
          genreObject[genre][1].concat([index]),
        ]
      : [plays[index], [index]];

    return genreObject;
  }, {});
  Object.entries(musicObject)
    .sort((a, b) => b[1][0] - a[1][0])
    .forEach(([genre, [totalPlays, indexArr]]) => {
      const sortedByPlays = indexArr.sort((a, b) => plays[b] - plays[a]);
      sortedByPlays.slice(0, 2).forEach((index) => res.push(index));
    });

  return res;
}

네트워크

네트워크
난 DFS로 풀긴 했음 간단한 dfs 구현

N으로 표현

N으로 표현
DP 문제, dp라는 것을 파악하고 경우를 잘 파악해야 됨